/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Controlador.Manejadores;

import Controlador.RequestHandler;
import Persistencia.Entidades.Importador;
import Persistencia.Exception.NoNuloException;
import Persistencia.Exception.UnicoException;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 *
 * @author zeta
 */
public class NuevoImportador implements RequestHandler {

    Persistencia.DAOFactory dao;
    Importador impo;

    public NuevoImportador(Persistencia.DAOFactory dao) {
        this.dao = dao;
        impo = new Importador();
    }

    public String handleRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {


        impo.setRazonSocial(request.getParameter("razonSocial"));
        impo.setAbreviado(request.getParameter("abreviado"));
        impo.setCuit(new Long(request.getParameter("cuit")));
        impo.setDireccion(request.getParameter("direccion"));
        impo.setLocalidad(request.getParameter("localidad"));
        impo.setProvincia(request.getParameter("provincia"));
        impo.setPais(request.getParameter("pais"));
        try {
            dao.getImportadorDAO().insertImportador(impo);
            request.setAttribute("mensaje", "Se guardo Correctamente el Exportador: " + impo.getRazonSocial());

        } catch (NoNuloException ex) {
            request.setAttribute("mensaje", "Error algunos de los campos no puede ser nulo");
            // throw new CampoNuloException(ex.getMessage());

        } catch (UnicoException ex) {
            request.setAttribute("mensaje", "Error algunos de los campos duplica los valores");
            //     throw new CampoUnicoException(ex.getMessage());
        }

        return "/Exportador/nuevoExportador.jsp";

    }
}
